<template>
  <div class="login-page">
    <!-- 标题 -->

    <van-nav-bar title="登录" />
    <!-- logo -->
    <img src="../assets/logo.png" />
    <!-- from表单 -->
    <van-form @submit="onSubmit" style="padding: 0 16px;">
      <van-field
        v-model="username"
        name="用户名"
        label="用户名"
        placeholder="用户名"
        :rules="[{ required: true, message: '请填写用户名' }]"
      />
      <van-field
        v-model="password"
        type="password"
        name="密码"
        label="密码"
        placeholder="密码"
        :rules="[{ required: true, message: '请填写密码' }]"
      />
    <!-- 立即注册-->
    <router-link to="/register" class="reg">立即注册</router-link>
    <!-- 登录-->
      <div style="margin: 16px">
        <van-button color="#1baeae"  round block type="info" native-type="submit">
            登录
        </van-button>
      </div>
    </van-form>
    
  </div>
</template>

<script>
export default {
  data() {
    return {
      username: "",
      password: "",
    };
  },
  // 生命周期函数

  created(){ //组件初始化成功后执行
    //接受路由传参 并且将参数赋值给登陆表单
    this.username=this.$route.params.username
    this.password=this.$route.params.password
  },

  methods: {
    //表单提交事件 点击登录触发
    onSubmit(values) {
      console.log("submit", values);
      //没有路由传参（没有注册）的时候先注册，再登录
      //JSON.stringify(this.$router.params)=="{}" 判断空对象
      if(JSON.stringify(this.$router.params)=="{}"){ 
        this.$toast('请先去注册');//弹窗提示
        //延时跳转
        setTimeout(()=>{
          this.$router.push("/register")
        },1000)
      }
      else{
        //有传参，直接登录
        //将用户名和密码保存在浏览器里
        localStorage.setItem('userInfo',JSON.stringify(this.$route.params)) //对象转字符串再存
        this.$toast("登陆成功");
        //跳转到首页 
        setTimeout(()=>{
          this.$router.push("/")
        },1000)
      }

    },

  },
};
</script>

<style>
img {
  display: block;
  margin: 32px auto;
}
.reg{
    margin:16px 0 0 16px;
    color: #1d8afa;
    font-size: 14px;
}
</style>